From: Roberto Vargas Date: Fri, 13 Apr 2018 13:26:47 +0000 (+0100) Subject: Allow overriding the linker X-Git-Url: http://git.openwrt.org/%22https:/collectd.org//%22/%22https:/collectd.org/%22?a=commitdiff_plain;h=2adee763f1ec8d8ed0663d727c7aabce49c726a0;p=project%2Fbcm63xx%2Fatf.git Allow overriding the linker This patch allows the user to override the value of the LD Makefile variable. This feature can be used to force the use of the new Clang linker. Change-Id: I97ffeb18e48fa75346702a479d7dc1e8abcb3621 Signed-off-by: Roberto Vargas --- diff --git a/Makefile b/Makefile index 180c5584..ed45fa3f 100644 --- a/Makefile +++ b/Makefile @@ -119,7 +119,7 @@ CC := ${CROSS_COMPILE}gcc CPP := ${CROSS_COMPILE}cpp AS := ${CROSS_COMPILE}gcc AR := ${CROSS_COMPILE}ar -LD := ${CROSS_COMPILE}ld +LINKER := ${CROSS_COMPILE}ld OC := ${CROSS_COMPILE}objcopy OD := ${CROSS_COMPILE}objdump NM := ${CROSS_COMPILE}nm @@ -128,8 +128,8 @@ DTC := dtc # Use ${LD}.bfd instead if it exists (as absolute path or together with $PATH). ifneq ($(strip $(wildcard ${LD}.bfd) \ - $(foreach dir,$(subst :, ,${PATH}),$(wildcard ${dir}/${LD}.bfd))),) -LD := ${LD}.bfd + $(foreach dir,$(subst :, ,${PATH}),$(wildcard ${dir}/${LINKER}.bfd))),) +LINKER := ${LINKER}.bfd endif ifeq (${ARM_ARCH_MAJOR},7) @@ -143,12 +143,15 @@ endif ifeq ($(notdir $(CC)),armclang) TF_CFLAGS_aarch32 = -target arm-arm-none-eabi $(march32-directive) TF_CFLAGS_aarch64 = -target aarch64-arm-none-eabi -march=armv8-a +LD = $(LINKER) else ifneq ($(findstring clang,$(notdir $(CC))),) TF_CFLAGS_aarch32 = $(target32-directive) TF_CFLAGS_aarch64 = -target aarch64-elf +LD = $(LINKER) else TF_CFLAGS_aarch32 = $(march32-directive) TF_CFLAGS_aarch64 = -march=armv8-a +LD = $(LINKER) endif TF_CFLAGS_aarch32 += -mno-unaligned-access